package org.itzixi.netty.utils;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

import java.time.Duration;

/**
 * Jedis 连接池工具类
 */
public class JedisPoolUtils {
//    redis:
//    host: 192.168.208.130
//    port: 6379   #教程里重复用了redis使用的是5379，自己虚拟机是6379
//    database: 0
    private static final JedisPool jedisPool;
    static {
        // 创建连接池
        JedisPoolConfig poolConfig = new JedisPoolConfig();
        // 配置连接池参数
        // 连接池最大连接数
        poolConfig.setMaxTotal(10);
        // 连接池最大空闲连接数
        poolConfig.setMaxIdle(10);
        // 连接池最小空闲连接数
        poolConfig.setMinIdle(5);
        // 最长等待时间
        poolConfig.setMaxWait(Duration.ofMillis(1500));

        jedisPool = new JedisPool(poolConfig, "192.168.208.130", 6379, 1000);
    }

    public static Jedis getJedis() {
        return jedisPool.getResource();
    }
}
